package org.sith.taskrunner.api.task;

/**
 *
 * @param <T> type of task for wrapping
 * @param <I> inputData for wrapper
 * @param <R> type of result of executed wrapped task.
 */

public interface TaskWrapper<T extends Task,I extends TaskInputData,R extends TaskWrapperResult> extends Task<I,R>{
    /**
     * Set task for wrapping
     * @param task task for wrapping
     */
    public void setTask(T task);
}
